43 research outputs found
Trust, but Verify: Two-Phase Typing for Dynamic Languages
A key challenge when statically typing so-called dynamic languages is the
ubiquity of value-based overloading, where a given function can dynamically
reflect upon and behave according to the types of its arguments. Thus, to
establish basic types, the analysis must reason precisely about values, but in
the presence of higher-order functions and polymorphism, this reasoning itself
can require basic types. In this paper we address this chicken-and-egg problem
by introducing the framework of two-phased typing. The first "trust" phase
performs classical, i.e. flow-, path- and value-insensitive type checking to
assign basic types to various program expressions. When the check inevitably
runs into "errors" due to value-insensitivity, it wraps problematic expressions
with DEAD-casts, which explicate the trust obligations that must be discharged
by the second phase. The second phase uses refinement typing, a flow- and
path-sensitive analysis, that decorates the first phase's types with logical
predicates to track value relationships and thereby verify the casts and
establish other correctness properties for dynamically typed languages
Recommended from our members
How Americans View the Opt Out Movement
This report examines public opinion on the Opt Out movement, which came to national prominence in 2015 when 20% of public school students in New York State opted out from taking state standardized tests in mathematics and English language arts. The movement has gained considerable attention from various educational stakeholders, and now Opt Out poses a challenge to a cornerstone of federal and state education policy in the United States: standardized tests.
The findings in this report are based on a combination of two online surveys with a national sample of 2,107 adults age 18 and older. The survey was conducted in English in February and May 2017. The survey included an experimental design in which respondents were randomly assigned to three equal-size groups. The first group was asked about parents âexcusing their children from state standardized tests,â the second group was asked about parents âopting their children out of state standardized tests,â and the third group was asked about parents âboycotting state standardized tests.â Respondents were recruited through Amazon Mechanical Turk and Qualtrics Panels
Revving up natural killer cells and cytokine-induced killer cells against hematological malignancies
Natural killer (NK) cells belong to innate immunity and exhibit cytolytic activity against infectious pathogens and tumor cells. NK-cell function is finely tuned by receptors that transduce inhibitory or activating signals, such as killer immunoglobulin-like receptors, NK Group 2 member D (NKG2D), NKG2A/CD94, NKp46, and others, and recognize both foreign and self-antigens expressed by NK-susceptible targets. Recent insights into NK-cell developmental intermediates have translated into a more accurate definition of culture conditions for the in vitro generation and propagation of human NK cells. In this respect, interleukin (IL)-15 and IL-21 are instrumental in driving NK-cell differentiation and maturation, and hold great promise for the design of optimal NK-cell culture protocols. Cytokine-induced killer (CIK) cells possess phenotypic and functional hallmarks of both T cells and NK cells. Similar to T cells, they express CD3 and are expandable in culture, while not requiring functional priming for in vivo activity, like NK cells. CIK cells may offer some advantages over other cell therapy products, including ease of in vitro propagation and no need for exogenous administration of IL-2 for in vivo priming. NK cells and CIK cells can be expanded using a variety of clinical-grade approaches, before their infusion into patients with cancer. Herein, we discuss GMP-compliant strategies to isolate and expand human NK and CIK cells for immunotherapy purposes, focusing on clinical trials of adoptive transfer to patients with hematological malignancies
Identification of unique neoantigen qualities in long-term survivors of pancreatic cancer
Pancreatic ductal adenocarcinoma is a lethal cancer with fewer than 7% of patients surviving past 5 years. T-cell immunity has been linked to the exceptional outcome of the few long-term survivors1,2, yet the relevant antigens remain unknown. Here we use genetic, immunohistochemical and transcriptional immunoprofiling, computational biophysics, and functional assays to identify T-cell antigens in long-term survivors of pancreatic cancer. Using whole-exome sequencing and in silico neoantigen prediction, we found that tumours with both the highest neoantigen number and the most abundant CD8+ T-cell infiltrates, but neither alone, stratified patients with the longest survival. Investigating the specific neoantigen qualities promoting T-cell activation in long-term survivors, we discovered that these individuals were enriched in neoantigen qualities defined by a fitness model, and neoantigens in the tumour antigen MUC16 (also known as CA125). A neoantigen quality fitness model conferring greater immunogenicity to neoantigens with differential presentation and homology to infectious disease-derived peptides identified long-term survivors in two independent datasets, whereas a neoantigen quantity model ascribing greater immunogenicity to increasing neoantigen number alone did not. We detected intratumoural and lasting circulating T-cell reactivity to both high-quality and MUC16 neoantigens in long-term survivors of pancreatic cancer, including clones with specificity to both high-quality neoantigens and predicted cross-reactive microbial epitopes, consistent with neoantigen molecular mimicry. Notably, we observed selective loss of high-quality and MUC16 neoantigenic clones on metastatic progression, suggesting neoantigen immunoediting. Our results identify neoantigens with unique qualities as T-cell targets in pancreatic ductal adenocarcinoma. More broadly, we identify neoantigen quality as a biomarker for immunogenic tumours that may guide the application of immunotherapies
Recommended from our members
PABLO and PYRITE: Helping Novices Debug Python Code Through Data-Driven Fault Localization and Repair
As dynamically-typed languages grow in popularity, especially among beginning programmers, novices have an increased need for scalable, helpful feedback for fixing their bugs.Localization and repair can be ambiguous: not all repairs which prevent the program from
crashing are equally useful for beginners. We propose scalable approaches for fault localization
and repair for dynamic languages that are helpful for debugging and generalize to handle a
wide variety of errors commonly faced by novice programmers. We base our approach on a
combination of static, dynamic, and contextual features, guided by machine learning. We evaluate
on over 980,000 diverse real user interactions across four years from the popular PythonTutor.com
website, which is used both in classes and by non-traditional learners. We find that our approach is
scalable, general, and quite accurate: up to 77% of these historical novice users would have been
helped by our top-three localization responses, compared to 45% for the default interpreter, and
we successfully synthesize repairs to 76% of our historical buggy programs. We also conducted
two human studies. Participants preferred our localization approach to the baseline (p = 0.018),
and found it additionally useful for bugs meriting multiple edits. Participants found our repairs to
contain helpful information beyond the baseline in 45% of programs
Recommended from our members
PABLO and PYRITE: Helping Novices Debug Python Code Through Data-Driven Fault Localization and Repair
As dynamically-typed languages grow in popularity, especially among beginning programmers, novices have an increased need for scalable, helpful feedback for fixing their bugs.Localization and repair can be ambiguous: not all repairs which prevent the program from
crashing are equally useful for beginners. We propose scalable approaches for fault localization
and repair for dynamic languages that are helpful for debugging and generalize to handle a
wide variety of errors commonly faced by novice programmers. We base our approach on a
combination of static, dynamic, and contextual features, guided by machine learning. We evaluate
on over 980,000 diverse real user interactions across four years from the popular PythonTutor.com
website, which is used both in classes and by non-traditional learners. We find that our approach is
scalable, general, and quite accurate: up to 77% of these historical novice users would have been
helped by our top-three localization responses, compared to 45% for the default interpreter, and
we successfully synthesize repairs to 76% of our historical buggy programs. We also conducted
two human studies. Participants preferred our localization approach to the baseline (p = 0.018),
and found it additionally useful for bugs meriting multiple edits. Participants found our repairs to
contain helpful information beyond the baseline in 45% of programs